home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / FPGAWKII.ZIP / CLOCK.PDS < prev    next >
Text File  |  1995-02-18  |  2KB  |  81 lines

  1. ; This example demonstrates the different
  2. ; types of clocking you can use in the
  3. ; EPX780.
  4. ;
  5. ; SET COMPILER OPTIONS TO:
  6. ;  Use Design Pin Assignments, but not
  7. ;               Previous, Abort on no fit
  8.  
  9. CHIP product NFX780_84
  10.  
  11. PIN 3  CLK1 ; synchronous clock pin 1
  12. PIN 45 CLK2 ; synchronous clock pin 2
  13.  
  14. PIN    a[1:2] ; 2 input pins
  15.  
  16. PIN 5  o1          ; output in CFB #0
  17. ; the next two outputs in CFB #0
  18. ; use a delayed synchronous clock
  19. PIN 6  o2 DELAYCLK
  20. PIN 7  o3 DELAYCLK
  21. ; but the following declaration will
  22. ; cause an error. see the note below.
  23. ; PIN 7  o3 
  24.  
  25. PIN 81 o4     ; an output in CFB #1
  26.  
  27. PIN [75:77] o[5:7]  ; 3 outputs in CFB #1
  28.  
  29. EQUATIONS
  30.  
  31. ; o1 will store the logical AND of a1
  32. ; and a2 on the falling edge of the
  33. ; synchronous clock CLK1
  34. o1 := a1 * a2
  35. o1.CLKF = /CLK1
  36.  
  37. ; o2 will store the logical AND of a1
  38. ; and a2 on the rising edge of the
  39. ; delayed synchronous clock CLK2
  40. o2 := a1 * a2
  41. o2.CLKF = CLK2
  42.  
  43. ; o3 will store the logical AND of a1
  44. ; and a2 on the falling edge of the
  45. ; delayed synchronous clock CLK2.
  46. ; Once one macrocell in a CFB uses a delayed
  47. ; global clock, all the other macrocells
  48. ; that use the same clock must also use the
  49. ; delayed version whether they want it
  50. ; or not.  That's because the delay is
  51. ; inserted as the clock enters the CFB,
  52. ; not on a macrocell-by-macrocell basis.
  53. o3 := a1 * a2
  54. o3.CLKF = /CLK2
  55.  
  56. ; o4 will store the logical AND of a1
  57. ; and a2 on the rising edge of the
  58. ; synchronous clock CLK2.  Note that
  59. ; o4 can use CLK2 does not have to use
  60. ; the delayed synchronous version of
  61. ; CLK2 since it is in a different
  62. ; macrocell from o3.
  63. o4 := a1 * a2
  64. o4.CLKF = CLK2
  65.  
  66. ; o5, o6, and o7 all store the logical
  67. ; AND of a1 and a2.  o5 and o6 use
  68. ; asynchronous clocking.
  69. o[5:7] := a1 * a2
  70. o5.ACLK = a1 * a2
  71. o6.ACLK = /a1 * a2
  72.  
  73. ; You can't use more than three different
  74. ; asynchronous clocks in a CFB, so the
  75. ; following won't work!
  76. ; o7.ACLK = /a1 * /a2 ; this won't fit!
  77.  
  78. ; but this is OK since it matches one of
  79. ; the previous asynchronous clock expressions
  80. o7.ACLK = a1 * a2 ; this will fit!
  81.